﻿using Logica.Fabricas;

namespace Logica
{
    /// <summary>
    /// Fabrica que se encarga de obtener las fabricas pertinentes a cada entidad de los Comandos 
    /// </summary>
    public abstract class FComandos
    {
        #region Metodos Abstractos
        public abstract Comando Agregar();
        public abstract Comando Consultar();
        public abstract Comando Eliminar();
        public abstract Comando Editar();
        public abstract Comando ConsultarTodos();
        #endregion


        #region Metodos Estaticos

        public static FComandoLugar ComandoLugar()
        {
            return new FComandoLugar();
        }

        public static FComandoSucursal ComandoSucursal()
        {
            return new FComandoSucursal();
        }

        public static FComandoAseguradora ComandoAseguradora()
        {
            return new FComandoAseguradora();
        }

        public static FComandoCliente ComandoCliente()
        {
            return new FComandoCliente();
        }

        public static FComandoRamo ComandoRamo()
        {
            return new FComandoRamo();
        }

        public static FComandoPoliza ComandoPoliza()
        {
            return new FComandoPoliza();
        }
        public static FComandoSiniestro ComandoSiniestro()
        {
            return new FComandoSiniestro();
        }
        #endregion
    }
}
